1. Field of the Invention
The present invention relates to computing. More particularly, the present invention relates to the application of Quality of Service to Home-to-Home network connections.
2. Description of the Related Art
Universal Plug and Play (UPnP) is a distributed, open networking architecture that allows devices to connect seamlessly and to simplify the implementation of networks in the home (data sharing, communications, and entertainment) and corporate environments. UPnP achieves this by defining and publishing UPnP device control protocols built upon open, Internet-based communication standards.
UPnP has grown in popularity of late in part due to the rise in popularity of media servers. Media servers are small computers that store multiple types of content (e.g., photos, music, videos, etc.). The content may then be streamed from a media server to one or more control points (e.g., iPod, television set, etc.).
As an example, a “Media Server” device might contain a significant portion of the homeowner's audio, video, and still-image library. In order for the homeowner to enjoy this content, the homeowner must be able to browse the objects stored on the Media Server, select a specific one, and cause it to be “played” on an appropriate rendering device.
For maximum convenience, it is highly desirable to allow the homeowner to initiate these operations from a variety of User Interface (UI) devices. In most cases, these UI devices will either be a UI built into the rendering device, or a stand-alone UI device such as a wireless PDA or tablet. In other cases, the home network user interface device could be more remote and communicate with the home network through a tunneling mechanism on the Internet.
In the field of computer networking and other packet-switched telecommunication networks, the traffic engineering term quality of service (QoS) refers to resource reservation control mechanisms. Quality of service is the ability to provide different priority to different applications, users, or data flows, or to guarantee a certain level of performance to a data flow. For example, a required bit rate, delay, jitter, packet dropping probability and/or bit error rate may be guaranteed. Quality of service guarantees are important if the network capacity is insufficient, especially for real-time streaming multimedia applications such as voice over IP, online games and IP-TV, since these often require fixed bit rate and are delay sensitive, and in networks where the capacity is a limited resource, for example in cellular data communication. In the absence of network congestion, QoS mechanisms are not required.
A network or protocol that supports QoS may agree on a traffic contract with the application software and reserve capacity in the network nodes, for example during a session establishment phase. During the session it may monitor the achieved level of performance, for example the data rate and delay, and dynamically control scheduling priorities in the network nodes. It may release the reserved capacity during a tear down phase.
The UPnP QoS Working Group has proposed a standardized middleware that provides real-time applications with a uniform interface to use QoS features of different Layer 2 or Layer 3 technologies in a heterogeneous home network. This approach, however, is a centralized approach, where a QoS request is sent to a centralized QoS manager that decomposes the end-to-end QoS requirements among device in the path and subsequently instructs devices in the path to reserve resource. While this solution works fine in home environments, where the size of the network is small and does not traverse great differences, it does not work as well where the network includes multiple homes spread across geographically-wide areas. The latencies involved in transmitting across such distances and the amount of traffic generated by the centralized QoS manager makes such a solution ineffective.